home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #14 / Monster Media No. 14 (April 1996) (Monster Media, Inc.).ISO / rem_acc / q_a4ra11.zip / QUESTAIR.Q&A < prev    next >
Text File  |  1996-02-04  |  20KB  |  578 lines

  1.  
  2.  
  3.  
  4.  
  5.              ▄█████▄  ▄▀▀▄   ▄█████▄ ▐█  ██  ██████▄ ▄█████▄
  6.              ██   ██  ▀▄▄▀   ██▄▄▄██ ██▄▄██▄ ██   ██ ██▄▄▄██
  7.              ██ ▀▄██ ▄▀  ▀▄▀ ██▀▀▀██ ▀▀▀▀██▀ ██████  ██▀▀▀██
  8.              ▀████▀▄ ▀▄  ▄▀▄ ██   ██     ██  ██  ▀██ ██   ██
  9.                        ▀▀  ▀
  10.                                Revision 11
  11.  
  12.                 Questions and Answers for RemoteAccess 2.x
  13.  
  14.                         ░░▒▒▓▓ QUESTAIR.Q&A ▓▓▒▒░░
  15.  
  16.                            Updated on 02/04/96
  17.  
  18.                             By: Eric Staufer
  19.                           The Concession Stand
  20.                            FidoNet 1:374/6568
  21.  
  22.  
  23.  
  24.  
  25.    Topics:                                     Keywords:
  26. ──────────────────────────────────────────┼─────────────────────────
  27.  o What can you do with a Questionnaire? ..... ** WHAT **
  28.  o General Parts of a Questionnaire .......... ** PARTS **
  29.         o Ask ................................ ** ASK **
  30.         o Assign ............................. ** ASSIGN **
  31.         o Capitalise ......................... ** CAPITAL **
  32.         o Commit ............................. ** COMMIT **
  33.         o ChangeColor ........................ ** COLOR **
  34.         o ClearScreen ........................ ** CLEAR **
  35.         o DefineOutput ....................... ** DEFINE **
  36.         o Display ............................ ** DISPLAY **
  37.         o DisplayFile ........................ ** DISPLAYFILE **
  38.         o EndIf .............................. ** ENDIF **
  39.         o Exec ............................... ** EXEC **
  40.         o GetChoice .......................... ** GETCHOICE **
  41.         o Goto ............................... ** GOTO **
  42.         o If ................................. ** IF **
  43.         o ListAnswer ......................... ** LISTANSWER **
  44.         o MenuCmnd ........................... ** MENUCMND **
  45.         o OutputAnswer ....................... ** OUTPUT **
  46.         o PostInfo ........................... ** POSTINFO **
  47.         o Quit ............................... ** QUIT **
  48.         o SetFlag ............................ ** FLAG **
  49.         o SetSecurity ........................ ** SECURITY **
  50.         o WaitEnter .......................... ** WAITENTER **
  51.  
  52.  o HardCoded Questionnaires .................. ** HARDCODED **
  53.  
  54.  
  55.  
  56.  
  57.  ** WHAT **
  58.  
  59.  What is a Questionnaire?
  60.  ─────────────────────────
  61.  
  62.  A Questionnaire (Q-A) is a script language file for RemoteAccess.  You can
  63.  ask questions within a questionnaire, and depending on the responce of a
  64.  certain questionnaire, you can upgrade their security, give them certain
  65.  flags, execute certain menu commands, and execute programs, or do the
  66.  opposite of the above.  Some people have even been known to create little
  67.  programs with these questionnaires.
  68.  
  69.  Though, most of the SysOps use Questionnaires to obtain information from
  70.  their users on their BBS, using them as polls and newuser questionnaires.
  71.  
  72.  For more information about 'What is a Questionnaire?' check page #236 of
  73.  the RemoteAccess Documentation.
  74.  
  75.  
  76.  ** PARTS **
  77.  
  78.  General Parts of a Questionnaire
  79.  ─────────────────────────────────
  80.  
  81.  Listed below in their each section are the different actions of a
  82.  questionnaire file.
  83.  
  84.  I am not going to copy WORD for WORD from the RA.DOC.
  85.  
  86.  At the top of the header for each action, I will make a note saying:
  87.  'See Page #xxx / RA.DOC "  For more information concerning the
  88.  specific action.
  89.  
  90.  
  91.  ** ASK **
  92.  
  93.  Ask                                              See Page #239 / RA.DOC
  94.  ────                                             ~~~~~~~~~~~~~~~~~~~~~~
  95.  
  96.   Syntax:  ASK <length> <variable #>
  97.  
  98.     Desc:  Prompts the user to input an answer into the <length> field.
  99.            The <variable #> is what to store the inputted information as.
  100.  
  101.  Example:  Ask 35 1
  102.  
  103.            In the above example, a user would have upto 35 characters to
  104.            write down the answer to a question.  The inputted information
  105.            would be stored as variable #1.
  106.  
  107.  
  108.  Assign                                           See Page #239 / RA.DOC
  109.  ───────                                          ~~~~~~~~~~~~~~~~~~~~~~
  110.  
  111.   Syntax:  ASSIGN <variable #> <"text">
  112.  
  113.     Desc:  This stores the <"text"> of what you specified on the command line
  114.            as a specific variable number.
  115.  
  116.          o Notice that the "text" must be in quotation marks.
  117.  
  118.          o Control Codes may be used in the place of the "text", but
  119.            control codes do not need to be in quotation marks.
  120.  
  121.  Example:  Assign 3 "Hello"
  122.  
  123.            This would simply store the word 'Hello' as variable #3.
  124.  
  125.  
  126.  ** CAPITAL **
  127.  
  128.  Capitalise                                       See Page #239 / RA.DOC
  129.  ───────────                                      ~~~~~~~~~~~~~~~~~~~~~~
  130.  
  131.   Syntax:  CAPITALISE <ON/OFF>
  132.  
  133.     Desc:  Turns on or off auto input capitalization.
  134.  
  135.            Default mode in a questionnaire is OFF.
  136.  
  137.  Example:  Capitalise ON
  138.  
  139.            This would force the user's input to be all capitalized.
  140.            To turn it back to normal mode, just use a Capitalise OFF.
  141.  
  142.  
  143.  ** COMMIT **                                     See Line #133 / WHATSNEW.250
  144.                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  145.  Commit
  146.  ───────
  147.  
  148.   Syntax:  COMMIT
  149.  
  150.     Desc:  Immediately writes the answers to the output (answer) file.
  151.  
  152.            Instead of waiting for the questionnaire to be completed before
  153.            writing all of the answers to the output file, with this new
  154.            command, it will immediately add the answers to the output file.
  155.  
  156.  Example:  Commit
  157.  
  158.  
  159.  ** COLOR **
  160.  
  161.  ChangeColor                                      See Page #240 / RA.DOC
  162.  ────────────                                     ~~~~~~~~~~~~~~~~~~~~~~
  163.  
  164.   Syntax:  CHANGECOLOR <foreground> <background>
  165.  
  166.     Desc:  Changes the color of the text, if the user has ANSi capabilities.
  167.            The Color Codes are on page #181.
  168.  
  169.  Example:  ChangeColor 10 0
  170.  
  171.            This would change the text color to Bright Green on a Black
  172.            Background.
  173.  
  174.  
  175.  ** CLEAR **
  176.  
  177.  ClearScreen                                      See Page #240 / RA.DOC
  178.  ────────────                                     ~~~~~~~~~~~~~~~~~~~~~~
  179.  
  180.   Syntax:  CLEARSCREEN
  181.  
  182.     Desc:  Clears the Screen if the user has screen clearing codes enabled.
  183.  
  184.  Example:  ClearScreen
  185.  
  186.            Would simply clear the user's screen.
  187.  
  188.  
  189.  ** DEFINE **                                     See Line #139 / WHATSNEW.250
  190.                                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  191.  DefineOutPut
  192.  ─────────────
  193.  
  194.   Syntax:  DefineOutPut c:\path\to\output.txt
  195.  
  196.     Desc:  This command which is optional, will put all of the output from
  197.            the questionnaire into the specified file and path.
  198.  
  199.            Normally, if this command is not specified, RA will automatically
  200.            generate the output file as the name of the questionnaire with
  201.            the ASW extension and would be found in RA's system directory.
  202.  
  203.  Example:  DefineOutPut C:\RA\QA\SAMPLE.ASW
  204.  
  205.            This would put all of the output into a file called SAMPLE.ASW
  206.            in the speficized directory.
  207.  
  208.  
  209.  ** DISPLAY **
  210.  
  211.  Display                                          See Page #240 / RA.DOC
  212.  ────────                                         ~~~~~~~~~~~~~~~~~~~~~~
  213.  
  214.   Syntax:  DISPLAY "<text> [ | ] "
  215.  
  216.     Desc:  Displays the given "text" to the user online.
  217.  
  218.          o That the <text> MUST be in quotes!
  219.          o The pipe '|' symbol is used as a carriage return.
  220.  
  221.  Example:  Display "Hello there! |"
  222.  
  223.            Displays the line "Hello there! " to the user.  And since
  224.            we used a pipe in the statement, it will automatically
  225.            goto the next line after the line is displayed.
  226.  
  227.  
  228.  ** DISPLAYFILE **
  229.  
  230.  DisplayFile                                      See Page #241 / RA.DOC
  231.  ────────────                                     ~~~~~~~~~~~~~~~~~~~~~~
  232.  
  233.   Syntax:  DISPLAYFILE <basename>
  234.  
  235.     Desc:  This displays a textfile to the user.   All you need to remember
  236.            is that after the command "DisplayFile" you must only write down
  237.            the basefile name of the file .. DO NOT INCLUDE THE EXTENSION.
  238.            Also, the textfile must reside in your textfiles directory.
  239.  
  240.  Example:  DisplayFile BBSRULES
  241.  
  242.            This would display the file BBSRULES to the user.
  243.  
  244.  
  245.  ** ENDIF **
  246.  
  247.  EndIf                                            See Page #241 / RA.DOC
  248.  ─────                                            ~~~~~~~~~~~~~~~~~~~~~~
  249.  
  250.   Syntax:  ENDIF
  251.  
  252.     Desc:  Used in conjunction with the "IF" command, it signifies the
  253.            end to the if statement.
  254.  
  255.  Example:  Please see the IF section.
  256.  
  257.  
  258.  
  259.  ** EXEC **
  260.  
  261.  Exec                                             See Page #241 / RA.DOC
  262.  ─────                                            ~~~~~~~~~~~~~~~~~~~~~~
  263.  
  264.   Syntax:  EXEC <command line>
  265.  
  266.     Desc:  Runs an external protocol.  Similiar to the Type 7 menu command.
  267.            All external parameters are allowed (ie *N, *M, etc..)
  268.  
  269.  Example:  C:\RA\SEARCH.EXE *M
  270.  
  271.            Would execute the program SEARCH.EXE from the C:\RA directory.
  272.            *M is used to swap RemoteAccess out of memory.
  273.  
  274.  
  275.  ** GETCHOICE **
  276.  
  277.  GetChoice                                        See Page #242 / RA.DOC
  278.  ──────────                                       ~~~~~~~~~~~~~~~~~~~~~~
  279.  
  280.   Syntax:  GETCHOICE <choices> <variable #>
  281.  
  282.     Desc:  Waits for the user to enter one of the valid <choices>.
  283.            And it stores the responce in the <variable #>.
  284.  
  285.  Example:  GetChoice YN 3
  286.  
  287.            Waits for the user to enter "Y" or "N", and stores the
  288.            input into variable #3.
  289.  
  290.  
  291.  ** GOTO **
  292.  
  293.  Goto                                             See Page #242 / RA.DOC
  294.  ─────                                            ~~~~~~~~~~~~~~~~~~~~~~
  295.  
  296.   Syntax:  GOTO <label>
  297.  
  298.     Desc:  Causes the script to jump to the <label>.
  299.            Please note that the label must be preceded by a colon ':'
  300.  
  301.  Example:  If 3 = "Y"
  302.            Goto YES
  303.            EndIf
  304.  
  305.            :YES
  306.            Display "Here we are."
  307.            Quit
  308.  
  309.            In this example, if variable #3 equaled "Y" then it would
  310.            GOTO the <label> called YES and then it would continue
  311.            processing.
  312.  
  313.  ** IF **
  314.  
  315.  If                                               See Page #242-244 / RA.DOC
  316.  ───                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~
  317.  
  318.  (I've taken this directly from the RA.DOC, I didnt want to even try to
  319.   rewrite this one...)
  320.  
  321.   Syntax:  IF <var num[~]> <operator> <operand>
  322.           
  323.     Desc:  This command is used to perform comparisons
  324.            within your script file and take actions based
  325.            on the results of the comparisons.  The result
  326.            of an IF comparison is considered to be either
  327.            true or false.  If the comparison is found to
  328.            be true, then all lines up to the next EndIF
  329.            are processed by the interpreter.  In case you
  330.            aren't familiar with logical comparisons,
  331.            refer to the examples listed below and later
  332.            in this chapter.  They will help you to better
  333.            understand the purpose and functionality of
  334.            this command.
  335.  
  336.            Specifically, this command compares the
  337.            contents of the variable <var num> with the
  338.            contents of <operand> using the type of
  339.            comparison specified in <operator>.
  340.           
  341.            <Var num> may be any variable number between 1
  342.            and 50 followed by the optional numeric
  343.            identifier "~".  When a tilde character "~" is
  344.            specified after <var num> it indicates that a
  345.            numeric comparison is to be made instead of a
  346.            text string comparison.
  347.  
  348.            <Operator> may be any combination of:
  349.           
  350.               =       Equal to...
  351.               <       Less than...
  352.               >       Greater than...
  353.           
  354.            <Operand> values may be:
  355.           
  356.            *   Literal text enclosed in quotation marks.
  357.            *   A variable number specified as <#var num>.
  358.            *   Any text file control code.
  359.           
  360.            When comparing the contents of a variable
  361.            specified as <var num> with the contents of
  362.            another variable specified as <operand>, the
  363.            <operand> variable number must be preceded by
  364.            the # character.
  365.           
  366.           NOTE:  This command may not be nested.  That is to say that
  367.           you cannot use an IF command between other IF and EndIF
  368.           commands.
  369.           
  370.  Examples:  IF 1 <> #2
  371.           
  372.             Would return true if the contents of variable
  373.             number one was not equal to the contents of
  374.             variable number 2.
  375.           
  376.             IF 5~ <= ^KO
  377.           
  378.             Would return true if the value of variable
  379.             number five was less than or equal to the
  380.             user's time remaining.  Notice that the "~"
  381.             was used to indicate that a numeric comparison
  382.             was to be made.  Also notice the usage of the
  383.             text file control code that returns the user's
  384.             time remaining.
  385.  
  386.             IF 5 = "LUXEMBOURG"
  387.             Display "Hey, that's where I live!|"
  388.             EndIF
  389.           
  390.             In this example, the interpreter would check
  391.             to see if variable number 5 was equal to the
  392.             string LUXEMBOURG.  If true, the text "Hey,
  393.             that's where I live!" would be displayed.  If
  394.             the contents of variable number 5 did not
  395.             match, the statement would have been
  396.             considered to be false and the interpreter
  397.             would jump to the EndIF statement.
  398.           
  399.             IF 1 <> #2
  400.             Display "Variables 1 and 2 are different!|"
  401.             EndIF
  402.           
  403.             In this example, the contents of variable
  404.             numbers one and two would be compared.  If
  405.             they were not equal, the text "Variables 1 and
  406.             2 are different!" would be displayed.
  407.  
  408.  
  409.  ** LISTANSWER **
  410.  
  411.  ListAnswer                                       See Page #244 / RA.DOC
  412.  ───────────                                      ~~~~~~~~~~~~~~~~~~~~~~
  413.  
  414.   Syntax:  LISTANSWER <variable #>
  415.  
  416.     Desc:  Displays the content of a variable number <variable #> followed
  417.            by a carriage return and line feed.
  418.  
  419.  Example:  Display "Please Enter Your Name: "
  420.            Ask 35 1
  421.            Display "You Entered: " ListAnswer 1
  422.  
  423.            In this example, it will show the user what he or she entered
  424.            after the question "Please Enter Your Name: "
  425.  
  426.  
  427.  ** MENUCMND **
  428.  
  429.  MenuCmnd                                         See Page #244 / RA.DOC
  430.  ─────────                                        ~~~~~~~~~~~~~~~~~~~~~~
  431.  
  432.   Syntax:  MENUCMND <number> <opt. data>
  433.  
  434.     Desc:  Executes the menu command specified, followed by the optional
  435.            data information.
  436.  
  437.  Example:  MenuCmnd 27 1 /T=Eric_Staufer
  438.  
  439.            This would post a message to Eric Staufer in message base #1.
  440.  
  441.            Pretty simple, huh?
  442.  
  443.  
  444.  ** OUTPUT **
  445.  
  446.  OutPutAnswer                                     See Page #245 / RA.DOC
  447.  ─────────────                                    ~~~~~~~~~~~~~~~~~~~~~~
  448.  
  449.   Syntax:  OUTPUTANSWER <"descriptor"> <variable #>
  450.  
  451.     Desc:  Writes the literal "text" string specified as <"descriptior">
  452.            followed by the contents of the <variable #>.
  453.  
  454.  Example:  OutputAnswer "Hobbies : " 2
  455.  
  456.            This would output:
  457.  
  458.            Hobbies: Playing Basketball & Football.
  459.  
  460.            to the answer file <.ASW> of the questionnaire..
  461.  
  462.  
  463.  ** POSTINFO **
  464.  
  465.  PostInfo                                         See Page #246 / RA.DOC
  466.  ─────────                                        ~~~~~~~~~~~~~~~~~~~~~~
  467.  
  468.   Syntax:  POSTINFO
  469.  
  470.     Desc:  Writes a header file for the Questionnaire ANSWER File (.ASW)
  471.  
  472.  Example:  PostInfo
  473.  
  474.            Take for instance John Smith had just completed the questionnaire.
  475.            We would see this, in the answer file:
  476.  
  477.            ** John Smith completeted questionnaire at 18:00 on 08-Aug-95 **
  478.  
  479.  
  480.  ** QUIT **
  481.  
  482.  Quit                                             See Page #246 / RA.DOC
  483.  ─────                                            ~~~~~~~~~~~~~~~~~~~~~~
  484.  
  485.   Syntax:  QUIT
  486.  
  487.     Desc:  Terminates the questionnaire and returns back to the BBS.
  488.  
  489.  Example:  Quit
  490.  
  491.            Would quit the questionnaire and return the user back to BBS.
  492.  
  493.  
  494.  ** FLAG **
  495.  
  496.  SetFlag                                          See Page #246 / RA.DOC
  497.  ────────                                         ~~~~~~~~~~~~~~~~~~~~~~
  498.  
  499.   Syntax:  SETFLAG <flagset><flag #> <ON/OFF>
  500.  
  501.     Desc:  This command would either turn on or off a specific user flag.
  502.            <FlagSet> is either A,B,C,D.  And flag # ranges from 1 to 8.
  503.  
  504.  Example:  SetFlag B8 ON
  505.  
  506.            This would turn the flag B8 to the ON position.
  507.  
  508.  
  509.  ** SECURITY **
  510.  
  511.  SetSecurity                                      See Page #247 / RA.DOC
  512.  ────────────                                     ~~~~~~~~~~~~~~~~~~~~~~
  513.  
  514.   Syntax:  SETSECURITY <sec level>
  515.  
  516.     Desc:  This command would change the user's security level to the
  517.            <sec level> specified.
  518.  
  519.  Example:  SetSecurity 100
  520.  
  521.            This would change the user's security level to 100.
  522.  
  523.  
  524.  ** WAITENTER **
  525.  
  526.  WaitEnter
  527.  ──────────
  528.  
  529.   Syntax:  WAITENTER                              See Page #247 / RA.DOC
  530.                                                   ~~~~~~~~~~~~~~~~~~~~~~
  531.     Desc:  This command if specified, will WAIT until the user presses
  532.            the ENTER key.   Ideal for the Press ENTER to Continue command.
  533.  
  534.  Example:  Display "Press [Enter] to Continue:
  535.            WaitEnter
  536.  
  537.            This will display the Press [Enter] to Continue string, and then
  538.            it will wait until the user presses enter, before continuing.
  539.  
  540.  
  541.  ** HARDCODED **
  542.  
  543.  HardCoded Questionnaires
  544.  ─────────────────────────
  545.  
  546.   Listed below are the names of the hard-coded questionnaires which
  547.   RemoteAccess supports:
  548.  
  549.  DOBCFAIL.Q-A   - Used when a user has incorrectly entered their date of
  550.                   birth at the DOB check.  You can use this questionnaire
  551.                   to downgrade their account, or whatever.
  552.  
  553.  NEWUSER.Q-A    - One of the most used questionnaires.  This questionnaire
  554.                   can be used to ask about more information from the user.
  555.                   Such as where they heard about the board, what kind of
  556.                   computer they are using, etc..
  557.  
  558.  NOCREDIT.Q-A   - This is used with the subscription system.  When the
  559.                   user reaches 0 credits remaining, this questionnaire
  560.                   comes in effect.  It can be used to lower their
  561.                   security level, or maybe, run an external credit card
  562.                   door.
  563.  
  564.  SUBDATE.Q-A    - This questionnaire is used when the user's subscription
  565.                   has expired.  Again, this can be used to lower the user's
  566.                   security level, or run an external credit card program.
  567.  
  568.  SUBDAYnn.Q-A   - This questionnaire is used as a reminder to a user where
  569.                   their subscription is about to expire.  nn - is the amount
  570.                   of days before the subscription expiration date.
  571.                   SUBDAY10.Q-A would be shown 10 days before their
  572.                   subscription expires.
  573.  
  574.  
  575. ░░▒▒▓▓ QUESTAIR.Q&A ▓▓▒▒░░
  576.  
  577. Total Lines: 577        Total Size: 19k
  578.